Information input and output are essential components of any computing system, as it provides a means by which computers and computer users can communicate. Virtually every computer processes data, and input is the mechanism to get unique data to the programs operating under the control of the computing system. The computer interface is the point--whether logical or physical--at which the computer and a peripheral connect. For example, keyboards, pointing devices, etc. are often used as a user interface for a user to input some form of text or other information to the computer system.
Computer systems often provide a means for which the user can enter an identifier of a desired resource. The desired resource can be any information related to a computer or computer network (i.e., computing system) that is used to control the computing system or that is stored within the computing system. For example, a desired resource may be specified by interacting with a command interpreter, often referred to as a command "shell". Generally, a command interpreter or shell is a program which reads textual commands from the user or from a file and executes them. Users enter commands, or other "identifiers" of a desired computer action, at a user interface so that a command interpreter or similar device can receive the commands for execution. The commands typically take the form of a character string identifying a specific action for which the computer should take, and may include many command "arguments" which either modify the action performed or supply it with additional input. Such commands and accompanying arguments often result in long character strings which are entered by the user.
Another desired resource may be a stored file in a computer memory or storage medium. Users enter identifiers (i.e., addresses) which specify which of the files is being sought. The user must enter the filename of the desired file, along with any preceding directory and sub-directory information. Similarly, the Internet is designed so that identifiers such as URLs (Uniform Resource Locators) can be entered by a user to locate the desired Internet resource. Because of the enormous amount of information available on the Internet and the potentially large number of files and directories configured on storage mediums, these types of identifiers (addresses, URLs, etc.) can also prove to be lengthy character strings. Other similar types of identifiers or addresses in computer systems also require computer users to enter comprehensive and intricate textual strings.
If any portion of the entered identifier proves to be incorrect, prior art computer systems simply indicate that the identifier is invalid, without indicating what portion, if any, of the identifier is valid. Typically, a user then carries out a trial-and-error procedure where the user removes the most specific portions of the identifier until a higher level identifier is found to be correct. Each of the removed portions is then reapplied to the high level identifier, one at a time, until the system indicates that the address is entered correctly. This method can be extremely cumbersome and time-consuming.
It would therefore be advantageous for a computer user interface to provide a means for which a lengthy character string would not have to be completely re-entered if an entry error occurred, and to help the user determine how to correct the faulty character string. It would also be beneficial to the user to be notified of the point of error so as to assist the user in analyzing whether the error was a typographical error or whether the user was not in possession of a valid identifier. Further, it would be beneficial to have the user interface or entry field automatically locate and position a cursor or other line entry identifier at the point where correction should be made. The present invention provides a solution to these and other problems, and offers other advantages over the prior art.